# Test for the calculation of effective mass tensor in Si with spin-orbit.
# Tensor is calculated for the first valence band
# (which is nondegenerate) at \Gamma.
ndtset 6
# Ground state calculation
kptopt1 4
ngkpt1 8 8 8
nshiftk1 1
shiftk1 0. 0. 0.
tolvrs1 1.0d-18
#Restore the default parameters for the ground state part,
#i.e. override the common parameters defined for the effective mass datasets.
nband1 8
tolwfr1 0.0d0
rfelfd1 0
getden1 0
getwfk1 0
nkpt1 0
efmas1 0
# WFK calc. at requested k-point
iscf2 -2
#Restore the default parameters for the WFK part...
rfelfd2 0
getwfk2 0
efmas2 0
# Response Function calculation : d/dk
rfelfd 2 # Activate the calculation of the d/dk perturbation (required for effective mass calc.)
getden 1
getwfk 2
kptopt 0 # K-points can be specified in any way one want, they just need to be present in the
nkpt 2 # ground state calc. too.
kpt 0.00 0.00 0.00
0.25 0.00 0.00
tolwfr 1.0d-22 # Must use tolwfr for non-self-consistent calculations.
efmas 1 # Triggers the calculation of effective mass tensors for the specified k-points.
efmas_bands 16 16 # The range of bands for which the effective mass tensors will be computed, for each k-point.
16 16 # NOTE: For SO calculations (with nspinor==2), has to be doubled (like nband).
efmas_ntheta 100 # If a band is degenerate, the number of points with which the angular integrals will be performed to compute the 'transport equivalent mass tensor' and the average effective mass.
# And we request the scalar effective mass along a direction in cartesian coordinates
efmas_calc_dirs 1
efmas_n_dirs 3
efmas_dirs 1 0 0 # x
1 1 1
1 1 0
# WARNING : Degenerate bands can only be treated at their extrema. The code will print and error and stop otherwise.
# Dataset 3 is just the first non-degenerate conduction band at gamma, so there is nothing more to specify for that dataset.
# Dataset 4 is the 4 valence bands at gamma and the first conduction at 1/4 0 0. Some valences are degenerate, which triggers additional computations.
efmas_bands4 1 8
9 9
# Dataset 5 is the 4 valence bands at gamma, with a different tolerance for band degeneracy.
efmas_bands5 1 8
nkpt5 1
efmas_deg_tol5 1.0d-2
# Dataset 6 is the 4 valence bands at gamma, with no special treatment of degeneracy (wrong results).
efmas_bands6 1 8
nkpt6 1
efmas_deg6 0
#######################################################################
#Common input variables
#Definition of the unit cell
acell 3*10.26310667319252 #http://www.ioffe.ru/SVA/NSM/Semicond/Si/basic.html
rprim 0.0 0.5 0.5
0.5 0.0 0.5
0.5 0.5 0.0
#Definition of the atom types
ntypat 1
znucl 14
#Definition of the atoms
natom 2
typat 1 1
xred
0.0 0.0 0.0
0.25 0.25 0.25
#Definition of the planewave basis set
ecut 5.0
pawecutdg 10.0 # PAW
ecutsm 0.0
#Spin-Orbit activation
nspinor 2 # Required for SO.
pawspnorb 1 # Activate SO within PAW (NC SO not supported by efmas at the moment)
nband 22 # with nspinor 2 and pawsporb 1, the bands will be doubled w/r to nspinor 1 calculations.
# Note that kptopt needs to be set to 4 for the ground state part in PAW SO, also.
#Definition of the SCF procedure
nstep 100 # Maximal number of SCF cycles
## After modifying the following section, one might need to regenerate the pickle database with runtests.py -r
#%%
#%% [setup]
#%% executable = abinit
#%% [shell]
#%% post_commands =
#%% [files]
#%% files_to_test =
#%% t82.out, tolnlines = 10, tolabs = 5.0e-5, tolrel = 5.0e-4, fld_options = -easy
#%% psp_files = Si-LDA.paw
#%% [paral_info]
#%% max_nprocs = 1
#%% [extra_info]
#%% authors = J. Laflamme Janssen
#%% keywords = DFPT, PAW
#%% description =
#%% Silicon.
#%% Silicon effective mass tensor in PAW with Spin-Orbit coupling.
#%%